1. Field of the Invention
The present invention relates generally to wireless communications, and more particularly to a system and method for communicating over a time-division duplex (TDD) channel.
2. Discussion of the Related Art
In today's electronically interconnected world, the normal complement of electronic equipment in the home or business includes devices that are connected to one another in different ways. For example, many desktop computer systems have a central processing unit (CPU) connected to a mouse, a keyboard, a printer and so on. A personal digital assistant (PDA) will normally connect to the computer with a cable and a docking cradle. A television may be connected to a VCR and a cable box, with a remote control for all three components. A cordless phone connects to its base unit with radio waves, and it may have a headset that connects to the phone with a wire. In a stereo system, a CD player, tape player and record player connect to a receiver, which connects to speakers. These connections can be difficult to install and maintain, particularly for the lay user.
Alternatives to these conventional approaches to connectivity have been proposed. Bluetooth™ (BT) is a computing and telecommunications industry specification for connectivity that is both wireless and automatic, as described in The Specification of the Bluetooth System, Version 1.1, Feb. 22, 2001, (“the BT specification”), which is incorporated herein by reference. BT allows any sort of electronic equipment—from computers and cell phones to keyboards and headphones—to make its own connections, without wires, cables or any direct action from a user. Because BT connections are wireless, offices can be designed without regard to cable placement and users can travel with portable devices without having to worry about carrying a multitude of cables. These connections can be established automatically, where BT devices find one another and form a connection without any user input at all.
BT requires that a low-cost microchip transceiver be included in each device. The BT microchip transceiver communicates on a frequency of 2.45 GHz, which has been set aside by international agreement for the use of industrial, scientific and medical devices (ISM). In addition to data, up to three voice channels are available. Each BT device has a unique 48-bit device address from the Institute of Electrical and Electronics Engineers 802 standard. Connections can be point-to-point or multi-point. Data can be exchanged at a rate of 1 megabit per second (up to 2 Mbps in the second generation of the technology).
A number of common consumer devices also take advantage of the same RF band. Baby monitors, garage-door openers and some cordless phones all make use of frequencies in the ISM band. The BT design employs various techniques to reduce interference between these devices and BT transmissions. For example, BT avoids interfering with other systems by sending out relatively weak signals of 1 milliwatt. By comparison, some cell phones can transmit a signal of 3 watts. The low power limits the range of a BT device to about 10 meters, thereby reducing the probability of interference with other devices.
BT also employs a spread-spectrum frequency hopping scheme to further reduce interference and increase capacity. BT devices use 79 randomly chosen frequencies within a designated range, changing from one to another on a regular basis 1,600 times every second. The random frequency hopping pattern makes it unlikely that two BT transmitters will be on the same frequency at the same time, thus reducing the probably of BT devices interfering with one another. This technique also minimizes the risk that other non-BT devices such as portable phones or baby monitors will disrupt BT devices since any interference on a particular frequency will last only a fraction of a second.
When BT devices come within range of one another, an electronic conversation takes place to determine whether they have data to share or whether one needs to control the other. Once the conversation has occurred, the devices form a “piconet”. A piconet may link devices located throughout a room, such as a home entertainment system, or devices much closer together such as a mobile phone on a belt-clip and a headset, or a computer, mouse, and printer. Once a piconet is established, the connected devices randomly hop frequencies in unison to communicate with one another and avoid other piconets that may be operating nearby.
One device acts as the master of the piconet, whereas the other unit(s) acts as slave(s). Up to seven slaves can be active in a single piconet. The slaves synchronize to the master's timing, and access to the channel is controlled by the master. The channel is represented by a pseudo-random hopping sequence hopping through the 79 RF channels. The hopping sequence is unique for each piconet and is determined by the BT device address of the master; the phase in the hopping sequence is determined by the BT clock of the master. The channel is divided into time slots where each slot corresponds to an RF hop frequency. Consecutive hops correspond to different RF hop frequencies. The nominal hop rate is 1,600 hops/second. All BT devices participating in the piconet are time- and hop-synchronized to the channel.
The channel is divided into time slots, each 625 μs in length. The time slots are numbered according to the BT clock of the piconet master. The slot numbering ranges from 0 to 272−1 and is cyclic with a cycle length of 227. In the time slots, master and slave can transmit packets. According to the BT specifications, a TDD scheme is used where master and slave alternatively transmit. The master starts its transmission in even-numbered time slots only, and the slaves starts their transmissions in odd-numbered time slots only. The packet start is aligned with the slot start. Packets transmitted by the master or the slaves may extend over up to five time slots.
The RF hop frequency shall remain fixed for the duration of the packet. For a single packet, the RF hop frequency to be used is derived from the current BT clock value. For a multi-slot packet, the RF hop frequency to be used for the entire packet is derived from the BT clock value in the first slot of the packet. The RF hop frequency in the first slot after a multi-slot packet uses the frequency as determined by the current BT clock value. If a packet occupies more than one time slot, the hop frequency applied is the hop frequency as applied in the time slot where the packet transmission was started.
Between master and slave(s), different types of links can be established. Two link types have been defined in the BT specifications: Synchronous Connection-Oriented (SCO) links, and Asynchronous Connection-Less (ACL) links. The SCO link is a point-to-point link between a master and a single slave in the piconet. The master maintains the SCO link by using reserved slots at regular intervals. The ACL link, by comparison, is a point-to-multipoint link between the master and all the slaves participating on the piconet. In the slots not reserved for SCO links, the master can exchange packets with any slave on a per-slot basis. The ACL link provides a packet-switched connection between the master and all active slaves participating in the piconet.
Data on the piconet channel is conveyed in packets. Each packet consists of three entities: the access code, the header, and the payload. The access code and header are of fixed size: 72 bits and 54 bits respectively. The payload can range from zero to a maximum of 2745 bits. Packets may include the access code only, the access code header, or the access code header payload. Sixteen different types of packets can be distinguished, four of which are pre-defined control types that are common to both link types. A 4-bit TYPE code, included in the header, specifies which packet type is used. The interpretation of the TYPE code depends on the physical link type associated with the packet. The device first determines whether the packet is sent on an SCO link or an ACL link, and then determines which type of SCO packet or ACL packet has been received. The TYPE code also indicates how many slots the current packet will occupy.
In an ACL link, the master can either broadcast packets to every slave in the piconet, or send packets to a particular slave. ACL packets not addressed to a specific slave are considered as broadcast packets and are read by all the slaves. In the reverse direction, the master controls slave access to the channel. According to the BT specification, under normal operating conditions only one slave transmits over the piconet channel during any particular time slot. The slaves therefore share the available bandwidth in the slave-to-master direction of the TDD channel.
In many applications, piconets are formed that include a relatively few number of slaves. For example, a computer can act as a master in a piconet with a slave printer or mouse. Here, the sharing of bandwidth amongst the slaves may not result in any significant degradation of performance. However, other scenarios may require that a master support a piconet having a greater number of slaves. For example, a network access point (NAP) provides wireless access to a network, such as the Internet or a local area network (LAN), to those BT devices within range of the NAP. NAPs can be used to provide convenient wireless access to the Internet, email, and other LAN resources. In typical business environments, and even some home environments, the NAP can often be expected to support up to the maximum 7 slaves. Performance in environments such as this can suffer where a relatively large number of slaves are sharing the available channel bandwidth.
What is needed therefore is an improved system and method whereby channel bandwidth is increased for those piconets having multiple slaves.